Graph Theory And Pathfinding Basics For Games Development